package io;

import java.io.Serializable;
import java.util.List;

/**
 *
 * @author Mariano Zapata
 */
public class Carpeta extends Identificable implements Serializable {
    
    private String nombre;
    private List<Carpeta> hijosCarpeta;
    private List<Cliente> hijosCliente;
    private List<Archivo> hijosArchivo;
    private boolean poseeHijos;
    
    public Carpeta(List<Long> ruta)
    {
        super(ruta);
        nombre= "";
        poseeHijos= false;
    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public List<Archivo> getHijosArchivo() {
        return hijosArchivo;
    }

    public void setHijosArchivo(List<Archivo> hijosArchivo) {
        this.hijosArchivo = hijosArchivo;
    }

    public List<Carpeta> getHijosCarpeta() {
        return hijosCarpeta;
    }

    public void setHijosCarpeta(List<Carpeta> hijosCarpeta) {
        this.hijosCarpeta = hijosCarpeta;
    }

    public List<Cliente> getHijosCliente() {
        return hijosCliente;
    }

    public void setHijosCliente(List<Cliente> hijosCliente) {
        this.hijosCliente = hijosCliente;
    }

    public boolean poseeHijos() {
        return poseeHijos;
    }

    public void setPoseeHijos(boolean poseeHijos) {
        this.poseeHijos = poseeHijos;
    }

    @Override
    public String toString() {
        return nombre;
    }

    @Override
    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        return super.equals(obj);
    }

    @Override
    public int hashCode() {return super.hashCode();}
}
